package com.ms.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 管理员实体类，对应数据库 `manager` 表
 */
@Data // Lombok 注解，自动生成 getter/setter/toString 等方法
@TableName("manager") // 指定数据库表名
public class Manager {

    /**
     * 主键（自增）
     * @TableId：指定主键策略，`IdType.AUTO` 对应数据库 auto_increment
     */
    @TableId(value = "ma_id", type = IdType.AUTO)
    private Integer maId;

    /**
     * 管理员姓名
     */
    @TableField("ma_name")
    private String maName;

    /**
     * 管理员账号
     */
    @TableField("ma_account")
    private String maAccount;

    /**
     * 管理员密码
     */
    @TableField("ma_password")
    private String maPassword;

    /**
     * 是否启用（tinyint(1) 映射为 Boolean）
     */
    @TableField("ma_isUsing")
    private Boolean maIsUsing;

    /**
     * 是否为主管理员（tinyint(1) 映射为 Boolean）
     */
    @TableField("ma_isMain")
    private Boolean maIsMain;

    /**
     * 时间字段（数据库自动生成当前时间）
     * datetime 类型映射为 Java 8+ 的 LocalDateTime
     */
    @TableField("ma_time")
    private LocalDateTime maTime;

    // 添加无参构造函数
    public Manager() {
    }

    public Manager(Integer maId, String maName, String maAccount, String maPassword, Boolean maIsUsing, Boolean maIsMain, LocalDateTime maTime) {
        this.maId = maId;
        this.maName = maName;
        this.maAccount = maAccount;
        this.maPassword = maPassword;
        this.maIsUsing = maIsUsing;
        this.maIsMain = maIsMain;
        this.maTime = maTime;
    }
}